このページは私用WordPressの覚え書き兼、テストページです。
「SNSボタン」は、テスト検証用に仮設置しているだけなので、押しても反応しません。

027 画像がアップロードできない?(LEOサーバー)

※この記事は、過去に書いたものの再アップです。備忘録。


画像がアップロードできない!(LEOサーバー)

最初にローカルサーバー環境で自作テーマを作り、その後、本番のサーバーで運用しようとした時に遭遇したトラブルです。

何故か「画像をアップロード」のボタンを押しても、画像が投稿できません・・・。onz

その時に契約していたのが今と同じ「LEOサーバー」で、
「LEOサーバー」に限った症状なのか、他のサーバーでもよくある事なのか不明なのですが、ここでかなり悩みました。


wp-content/uploads に接続できませんでした。エラー

などと言われてしまいます。


解決法「その1」 FFFTP で保存先のフォルダを作る

WordPressでファイルがアップロードできない場合の対策

上記サイトさんでも書かれていますが、WordPress は、投稿した画像は、
wordpress/wp-content/uploads というフォルダに保存されます。
(投稿した記事のテキストは DB に保存されますが、画像はちがう)

んで、通常はこのフォルダが自動生成され、自動的にアップロードした画像のフォルダが年ごと、月ごとに作成されます(デフォルトの設定だと思う)

で、この自動生成が、サーバによってはされない場合があるよ、ってことのようです。
なので、自分で空のフォルダを作り、FFFTP で空フォルダ「uploads」をアップしておくといいよ、ってこと。

でも、私の場合は、すでに「ローカルサーバ」で作った記事をいくつかアップ済みで、
xxxxxx/wp-content/uploads の中には、もう画像フォルダがあり、画像ファイルもアップされている状態です。

実際 FFFTP で中をのぞいてみると、
wp-content/uploads/2012/09/xxxxx.jpg というように、ちゃんと画像が保存されています。
http://www.xxxxxxx.com/wp-content/uploads/2012/09/xxxxx.jpg
とブラウザにURLを打ち込んでみても、ちゃんと表示されます。


なのに、なのに、
新規でアップロードしようとすると、拒否されるんですよ!
どうも、そのフォルダを認識しない、っつーか、たどりつけない、となるみたい。


パーミッションを確認してみよう

で、参考サイトさんの次に続く文章、
「wp-contentディレクトリ」のパーミッションがデフォルトで755となっているため権限不足でディレクトリが作成できないだけ、
wp-content/uploads のパーミッションを「757」に変更してあげよう

 ↓
ダメでした。なんも変わらず、同じえらー(泣)


.htaccessファイルに追記してみる

ならば、.htaccessファイル を置いたらどうだ、ってことでやってみました。
 ↓
ダメでした。違うエラーがでました。(泣) あわてて.htaccess を撤去。(汗)


解決法「その2」-「管理画面」の「メディア」を空更新してみる

●WordPressで画像がアップロードできない不具合を修復

これは、「管理画面」→「設定」→「メディア」で、アップロードするフォルダの設定を確認してみて、ってことです。


初期設定のまま何もいじっていないので、アップロードするフォルダ先は空白(=デフォルトのwp-content/uploads になってるってこと)でしたが、念のために wp-content/uploads と、打ちこんで「更新」してみました。
 ↓
ダメでした。なんも変わらず、同じ。


やっと解決しました

さんざん2~3日悩んだ結果ですね、試しに、なんとなく実行してみたものなのですが、

xxxxx/wp-content/uploads のパーミッションは「757」に変更したものの、そういえば、その中身のパーミッションまでは、変更していなかったな・・・ と、ふと思い、

 ↓

その中のフォルダ、「2010」「2011」「2012」とかの年フォルダ、その中に作られた「01」~「09」とかの月フォルダも全部、「757」に変更してみました。


そしたら  ↓ なんと、アップロードできるようになりました!!!


いままで無反応だったアイキャッチ画像も、設定できるようになりました!!!


よ、よかった・・・・


これでやっと「イラスト目次」のページも表示されるようになりました。


もし、画像がアップロードできない謎のエラーに遭遇された方は、xxxxx/wp-content/uploads の中のフォルダ全部のパーミッションも確認してみてください。

ご参考までに。